Replaced foreach with range loops
authorPablo Ariño Muñoz <progpabarino@gmail.com>
Thu, 20 Feb 2025 21:50:13 +0000 (22:50 +0100)
committerbackportbot[bot] <backportbot[bot]@users.noreply.github.com>
Tue, 25 Feb 2025 03:55:21 +0000 (03:55 +0000)
Signed-off-by: Pablo Ariño Muñoz <progpabarino@gmail.com>
32 files changed:
src/common/ownsql.cpp
src/common/syncjournaldb.cpp
src/gui/folderman.cpp
src/gui/folderwizard.cpp
src/gui/ignorelisttablewidget.cpp
src/gui/lockwatcher.cpp
src/gui/openfilemanager.cpp
src/gui/owncloudgui.cpp
src/gui/selectivesyncdialog.cpp
src/gui/settingsdialog.cpp
src/gui/sharemanager.cpp
src/gui/sslbutton.cpp
src/gui/sslerrordialog.cpp
src/gui/tray/activitydata.cpp
src/gui/tray/activitylistmodel.cpp
src/gui/tray/notificationhandler.cpp
src/gui/tray/usermodel.cpp
src/libsync/account.cpp
src/libsync/capabilities.cpp
src/libsync/configfile.cpp
src/libsync/cookiejar.cpp
src/libsync/discovery.cpp
src/libsync/networkjobs.cpp
src/libsync/owncloudpropagator.cpp
src/libsync/owncloudpropagator.h
src/libsync/progressdispatcher.cpp
src/libsync/propagateupload.cpp
src/libsync/propagateuploadv1.cpp
src/libsync/propagatorjobs.cpp
src/libsync/syncengine.cpp
src/libsync/syncfilestatustracker.cpp
test/testnextcloudpropagator.cpp

index 79e097b4529118d63929506b6846421afd335b44..9271a2a558764f8b4f96884ba197712b8a9ab786 100644 (file)
@@ -186,7 +186,7 @@ QString SqlDatabase::error() const
 void SqlDatabase::close()
 {
     if (_db) {
-        foreach (auto q, _queries) {
+        for (auto q : qAsConst(_queries)) {
             q->finish();
         }
         SQLITE_DO(sqlite3_close(_db));
index 927e2dcc1affbf5b1ec11bdc4923f746a549a82b..91228771816175badb8bd61863787060c50f1da3 100644 (file)
@@ -950,7 +950,7 @@ Result<void, QString> SyncJournalDb::setFileRecord(const SyncJournalFileRecord &
     if (!_etagStorageFilter.isEmpty()) {
         // If we are a directory that should not be read from db next time, don't write the etag
         QByteArray prefix = record._path + "/";
-        foreach (const QByteArray &it, _etagStorageFilter) {
+        for (const QByteArray &it : qAsConst(_etagStorageFilter)) {
             if (it.startsWith(prefix)) {
                 qCInfo(lcDb) << "Filtered writing the etag of" << prefix << "because it is a prefix of" << it;
                 record._etag = "_invalid_";
@@ -1718,7 +1718,7 @@ static bool deleteBatch(SqlQuery &query, const QStringList &entries, const QStri
 
     qCDebug(lcDb) << "Removing stale" << name << "entries:" << entries.join(QStringLiteral(", "));
     // FIXME: Was ported from execBatch, check if correct!
-    foreach (const QString &entry, entries) {
+    for (const QString &entry : qAsConst(entries)) {
         query.reset_and_clear_bindings();
         query.bindValue(1, entry);
         if (!query.exec()) {
index c9b7faaea910bb21304062ad4506c51e216b67b8..6d5544feeb431d1ac362c25a84f06736dd712640 100644 (file)
@@ -853,7 +853,7 @@ void FolderMan::slotAccountStateChanged()
         qCInfo(lcFolderMan) << "Account" << accountName << "disconnected or paused, "
                                                            "terminating or descheduling sync folders";
 
-        foreach (Folder *f, _folderMap.values()) {
+        for (Folder *f : qAsConst(_folderMap.values())) {
             if (f
                 && f->isSyncRunning()
                 && f->accountState() == accountState) {
index 3561699d610eed8c1304781f85cb3d2700bc2205..c198b40bd0767a37944395b1cf1fa8cdd96a51a4 100644 (file)
@@ -337,7 +337,7 @@ bool FolderWizardRemotePath::selectByPath(QString path)
     QTreeWidgetItem *it = _ui.folderTreeWidget->topLevelItem(0);
     if (!path.isEmpty()) {
         const QStringList pathTrail = path.split(QLatin1Char('/'));
-        foreach (const QString &path, pathTrail) {
+        for (const QString &path : qAsConst(pathTrail)) {
             if (!it) {
                 return false;
             }
@@ -367,7 +367,7 @@ void FolderWizardRemotePath::slotUpdateDirectories(const QStringList &list)
     }
     QStringList sortedList = list;
     Utility::sortFilenames(sortedList);
-    foreach (QString path, sortedList) {
+    for (QString path : sortedList) {
         path.remove(webdavFolder);
 
         // Don't allow to select subfolders of encrypted subfolders
index f6dd7347fe14ba92eac10f044bb127f6cd288e1b..16f797d3946afb05f08ab8a0dc4226ae5cb3001b 100644 (file)
@@ -100,7 +100,7 @@ void IgnoreListTableWidget::slotWriteIgnoreFile(const QString & file)
     // We need to force a remote discovery after a change of the ignore list.
     // Otherwise we would not download the files/directories that are no longer
     // ignored (because the remote etag did not change)   (issue #3172)
-    foreach (Folder *folder, folderMan->map()) {
+    for (Folder *folder : qAsConst(folderMan->map())) {
         folder->journalDb()->forceRemoteDiscoveryNextSync();
         folderMan->scheduleFolder(folder);
     }
index d3edc23522416b5cbfb407f0b91eabd2078e8f2f..cb9e4412eb261cc5ce01ba459b74c7a5a9f2526d 100644 (file)
@@ -52,7 +52,7 @@ void LockWatcher::checkFiles()
 {
     QSet<QString> unlocked;
 
-    foreach (const QString &path, _watchedPaths) {
+    for (const QString &path : _watchedPaths) {
         if (!FileSystem::isFileLocked(path)) {
             qCInfo(lcLockWatcher) << "Lock of" << path << "was released";
             emit fileUnlocked(path);
index d2bfee9a406361551c3c062ac00b7e0797fee52e..455c194e60f6cdf7b9d1a74a0e6c249f0398b64a 100644 (file)
@@ -64,8 +64,8 @@ static QString findDefaultFileManager()
     QStringList subdirs;
     subdirs << "/applications/"
             << "/applications/kde4/";
-    foreach (QString dir, dirs) {
-        foreach (QString subdir, subdirs) {
+    for (const QString &dir : dirs) {
+        for (const QString &subdir : subdirs) {
             fi.setFile(dir + subdir + fileName);
             if (fi.exists()) {
                 return fi.absoluteFilePath();
index 872635352bb5674ee4593906ea9332c64365c6ef..92bdd74f2e1212a587943611ba9c5a0f52778e75 100644 (file)
@@ -358,7 +358,7 @@ void ownCloudGui::slotComputeOverallSyncStatus()
 #ifdef Q_OS_WIN
         // Windows has a 128-char tray tooltip length limit.
         QStringList accountNames;
-        foreach (AccountStatePtr a, problemAccounts) {
+        for (const AccountStatePtr &a : qAsConst(problemAccounts)) {
             accountNames.append(a->account()->displayName());
         }
         _tray->setToolTip(tr("Disconnected from %1").arg(accountNames.join(QLatin1String(", "))));
@@ -570,7 +570,7 @@ void ownCloudGui::slotLogin()
         account->signIn();
     } else {
         auto list = AccountManager::instance()->accounts();
-        foreach (const auto &a, list) {
+        for (const auto &a : qAsConst(list)) {
             a->signIn();
         }
     }
@@ -584,7 +584,7 @@ void ownCloudGui::slotLogout()
         list.append(account);
     }
 
-    foreach (const auto &ai, list) {
+    for (const auto &ai : qAsConst(list)) {
         ai->signOutByUi();
     }
 }
index af8deeb90c7d7e4c5582071cfecdd5d487905c9e..5bd2246cea899ef5b312f75b5c2f23314125a7e8 100644 (file)
@@ -166,7 +166,7 @@ void SelectiveSyncWidget::recursiveInsert(QTreeWidgetItem *parent, QStringList p
             if (parent->checkState(0) == Qt::Checked
                 || parent->checkState(0) == Qt::PartiallyChecked) {
                 item->setCheckState(0, Qt::Checked);
-                foreach (const QString &str, _oldBlackList) {
+                for (const QString &str : qAsConst(_oldBlackList)) {
                     if (str == path || str == QLatin1String("/")) {
                         item->setCheckState(0, Qt::Unchecked);
                         break;
@@ -218,7 +218,7 @@ void SelectiveSyncWidget::slotUpdateDirectories(QStringList list)
     // list of top-level folders as soon as possible.
     if (_oldBlackList == QStringList("/")) {
         _oldBlackList.clear();
-        foreach (QString path, list) {
+        for (QString path : qAsConst(list)) {
             path.remove(pathToRemove);
             if (path.isEmpty()) {
                 continue;
@@ -249,7 +249,7 @@ void SelectiveSyncWidget::slotUpdateDirectories(QStringList list)
     }
 
     Utility::sortFilenames(list);
-    foreach (QString path, list) {
+    for (QString path : qAsConst(list)) {
         auto size = job ? job->_folderInfos[path].size : 0;
         path.remove(pathToRemove);
 
@@ -425,7 +425,7 @@ QStringList SelectiveSyncWidget::createBlackList(QTreeWidgetItem *root) const
     } else {
         // We did not load from the server so we reuse the one from the old black list
         QString path = root->data(0, Qt::UserRole).toString();
-        foreach (const QString &it, _oldBlackList) {
+        for (const QString &it : qAsConst(_oldBlackList)) {
             if (it.startsWith(path))
                 result += it;
         }
@@ -533,7 +533,7 @@ void SelectiveSyncDialog::accept()
         // (the ones that are no longer in the blacklist)
         auto blackListSet = QSet<QString>{blackList.begin(), blackList.end()};
         auto changes = (oldBlackListSet - blackListSet) + (blackListSet - oldBlackListSet);
-        foreach (const auto &it, changes) {
+        for (const auto &it : qAsConst(changes)) {
             _folder->journalDb()->schedulePathForRemoteDiscovery(it);
             _folder->schedulePathForLocalDiscovery(it);
         }
index 7b4d778946f226d67a04045243a0956920f3647a..5853e4971533aa404f89cab8452f43db6a80cc98 100644 (file)
@@ -350,7 +350,7 @@ void SettingsDialog::customizeStyle()
     QString background(palette().base().color().name());
     _toolBar->setStyleSheet(TOOLBAR_CSS().arg(background, dark, highlightColor, highlightTextColor));
 
-    Q_FOREACH (QAction *a, _actionGroup->actions()) {
+    for (QAction *a : qAsConst(_actionGroup->actions())) {
         QIcon icon = Theme::createColorAwareIcon(a->property("iconPath").toString(), palette());
         a->setIcon(icon);
         auto *btn = qobject_cast<QToolButton *>(_toolBar->widgetForAction(a));
index 8065db43d79d3ef0a4386c112fce12ec7f0bcba2..b157a50c59247f23b422d0cb1c3ad900baad09af 100644 (file)
@@ -34,7 +34,7 @@ namespace OCC {
  */
 static void updateFolder(const AccountPtr &account, QStringView path)
 {
-    foreach (Folder *f, FolderMan::instance()->map()) {
+    for (Folder *f : qAsConst(FolderMan::instance()->map())) {
         if (f->accountState()->account() != account)
             continue;
         auto folderPath = f->remotePath();
@@ -464,7 +464,7 @@ void ShareManager::createShare(const QString &path,
         [=](const QJsonDocument &reply) {
             // Find existing share permissions (if this was shared with us)
             Share::Permissions existingPermissions = SharePermissionAll;
-            foreach (const QJsonValue &element, reply.object()["ocs"].toObject()["data"].toArray()) {
+            for (const QJsonValue &element : reply.object()["ocs"].toObject()["data"].toArray()) {
                 auto map = element.toObject();
                 if (map["file_target"] == path)
                     existingPermissions = Share::Permissions(map["permissions"].toInt());
@@ -559,7 +559,7 @@ const QList<SharePtr> ShareManager::parseShares(const QJsonDocument &reply) cons
 
     QList<SharePtr> shares;
 
-    foreach (const auto &share, tmpShares) {
+    for (const auto &share : qAsConst(tmpShares)) {
         auto data = share.toObject();
 
         auto shareType = data.value("share_type").toInt();
index c54d0f527e1c1a2bff8f706ac62c7ab2c96c97ec..e7f4135e894c33ed8ee407ff54e6caaacc9589f7 100644 (file)
@@ -217,7 +217,7 @@ void SslButton::slotUpdateMenu()
         const auto systemCerts = QSslConfiguration::systemCaCertificates();
 
         QList<QSslCertificate> tmpChain;
-        foreach (QSslCertificate cert, chain) {
+        for (const QSslCertificate &cert : qAsConst(chain)) {
             tmpChain << cert;
             if (systemCerts.contains(cert))
                 break;
index b8c65e556c530a3be376cccd894d7c0450c31434..43fc92fb4ede82fb4b60d4f366decf5acb4ceedc 100644 (file)
@@ -138,10 +138,10 @@ bool SslErrorDialog::checkFailingCertsKnown(const QList<QSslError> &errors)
     msg += QL("<h3>") + tr("Cannot connect securely to <i>%1</i>:").arg(host) + QL("</h3>");
     // loop over the unknown certs and line up their errors.
     msg += QL("<div id=\"ca_errors\">");
-    foreach (const QSslCertificate &cert, _unknownCerts) {
+    for (const QSslCertificate &cert : _unknownCerts) {
         msg += QL("<div id=\"ca_error\">");
         // add the errors for this cert
-        foreach (QSslError err, errors) {
+        for (const auto &err : qAsConst(errors)) {
             if (err.certificate() == cert) {
                 msg += QL("<p>") + err.errorString() + QL("</p>");
             }
index 762a9cc3e4e77d83ba495003548be6163e617c8d..d702f5a117d88cdacb0f9876fe243f099785b5f2 100644 (file)
@@ -174,7 +174,7 @@ OCC::Activity Activity::fromActivityJson(const QJsonObject &json, const AccountP
     }
 
     auto actions = json.value("actions").toArray();
-    foreach (auto action, actions) {
+    for (auto action : qAsConst(actions)) {
         activity._links.append(ActivityLink::createFomJsonObject(action.toObject()));
     }
 
index 4adf4d5b30837968c6f325bb9dedf38e38b98124..50d7e58116657a367794fec031d832d0985d8bfc 100644 (file)
@@ -278,7 +278,7 @@ QVariant ActivityListModel::data(const QModelIndex &index, int role) const
         return displayLocation();
     case ActionsLinksRole: {
         QList<QVariant> customList;
-        foreach (ActivityLink activityLink, a._links) {
+        for (const ActivityLink &activityLink : qAsConst(a._links)) {
             customList << QVariant::fromValue(activityLink);
         }
         return customList;
@@ -610,7 +610,7 @@ void ActivityListModel::addIgnoredFileToList(const Activity &newActivity)
         return;
     }
 
-    foreach (Activity activity, _listOfIgnoredFiles) {
+    for (const Activity &activity : qAsConst(_listOfIgnoredFiles)) {
         if (activity._file == newActivity._file) {
             duplicate = true;
             break;
index b2a9fc78b9b249af975da7c1a7b2697242311241..5de87787457ba5004d8f2e348c4bb0bbb24c8cd2 100644 (file)
@@ -96,7 +96,7 @@ void ServerNotificationHandler::slotNotificationsReceived(const QJsonDocument &j
     ActivityList list;
     ActivityList callList;
 
-    foreach (auto element, notifies) {
+    for (auto element : qAsConst(notifies)) {
         auto json = element.toObject();
         auto a = Activity::fromActivityJson(json, ai->account());
 
index e67549d1b2a1686b4da5ee15d8810ac832aefe5a..36e4d17f09fe8d3a8b753be4af489e0536e6902d 100644 (file)
@@ -589,7 +589,7 @@ void User::slotProgressInfo(const QString &folder, const ProgressInfo &progress)
             return;
         const auto &engine = f->syncEngine();
         const auto style = engine.lastLocalDiscoveryStyle();
-        foreach (Activity activity, _activityModel->errorsList()) {
+        for (const Activity &activity : _activityModel->errorsList()) {
             if (activity._expireAtMsecs != -1) {
                 // we process expired activities in a different slot
                 continue;
@@ -638,7 +638,7 @@ void User::slotProgressInfo(const QString &folder, const ProgressInfo &progress)
         // We keep track very well of pending conflicts.
         // Inform other components about them.
         QStringList conflicts;
-        foreach (Activity activity, _activityModel->errorsList()) {
+        for (const Activity &activity : _activityModel->errorsList()) {
             if (activity._folder == folder
                 && activity._syncFileItemStatus == SyncFileItem::Conflict) {
                 conflicts.append(activity._file);
index fbfc415bddb4522c7babe30ec8f3eec73a668f52..1302b66566f5f35ce7f4eb0ba3cf25ea954c0ac6 100644 (file)
@@ -567,7 +567,7 @@ void Account::slotHandleSslErrors(QNetworkReply *reply, QList<QSslError> errors)
     NetworkJobTimeoutPauser pauser(reply);
     QString out;
     QDebug(&out) << "SSL-Errors happened for url " << reply->url().toString();
-    foreach (const QSslError &error, errors) {
+    for (const QSslError &error : qAsConst(errors)) {
         QDebug(&out) << "\tError in " << error.certificate() << ":"
                      << error.errorString() << "(" << error.error() << ")"
                      << "\n";
@@ -577,7 +577,7 @@ void Account::slotHandleSslErrors(QNetworkReply *reply, QList<QSslError> errors)
     qCInfo(lcAccount()) << reply->sslConfiguration().peerCertificateChain();
 
     bool allPreviouslyRejected = true;
-    foreach (const QSslError &error, errors) {
+    for (const QSslError &error : qAsConst(errors)) {
         if (!_rejectedCertificates.contains(error.certificate())) {
             allPreviouslyRejected = false;
         }
@@ -624,7 +624,7 @@ void Account::slotHandleSslErrors(QNetworkReply *reply, QList<QSslError> errors)
             return;
 
         // Mark all involved certificates as rejected, so we don't ask the user again.
-        foreach (const QSslError &error, errors) {
+        for (const QSslError &error : qAsConst(errors)) {
             if (!_rejectedCertificates.contains(error.certificate())) {
                 _rejectedCertificates.append(error.certificate());
             }
@@ -939,7 +939,7 @@ void Account::slotDirectEditingRecieved(const QJsonDocument &json)
     auto data = json.object().value("ocs").toObject().value("data").toObject();
     auto editors = data.value("editors").toObject();
 
-    foreach (auto editorKey, editors.keys()) {
+    for (const auto &editorKey : qAsConst(editors.keys())) {
         auto editor = editors.value(editorKey).toObject();
 
         const QString id = editor.value("id").toString();
@@ -951,11 +951,11 @@ void Account::slotDirectEditingRecieved(const QJsonDocument &json)
 
             auto *directEditor = new DirectEditor(id, name);
 
-            foreach(auto mimeType, mimeTypes) {
+            for (const auto &mimeType : qAsConst(mimeTypes)) {
                 directEditor->addMimetype(mimeType.toString().toLatin1());
             }
 
-            foreach(auto optionalMimeType, optionalMimeTypes) {
+            for (const auto &optionalMimeType : qAsConst(optionalMimeTypes)) {
                 directEditor->addOptionalMimetype(optionalMimeType.toString().toLatin1());
             }
 
index 55e63874aa7ffdd24eb062a18c685ab1a708ed2a..b43f29a995fae97574ccebaeec35b9130d0d252d 100644 (file)
@@ -211,7 +211,7 @@ bool Capabilities::isClientStatusReportingEnabled() const
 QList<QByteArray> Capabilities::supportedChecksumTypes() const
 {
     QList<QByteArray> list;
-    foreach (const auto &t, _capabilities["checksums"].toMap()["supportedTypes"].toList()) {
+    for (const auto &t : qAsConst(_capabilities["checksums"].toMap()["supportedTypes"].toList())) {
         list.push_back(t.toByteArray());
     }
     return list;
@@ -373,7 +373,7 @@ bool Capabilities::privateLinkPropertyAvailable() const
 QList<int> Capabilities::httpErrorCodesThatResetFailingChunkedUploads() const
 {
     QList<int> list;
-    foreach (const auto &t, _capabilities["dav"].toMap()["httpErrorCodesThatResetFailingChunkedUploads"].toList()) {
+    for (const auto &t : qAsConst(_capabilities["dav"].toMap()["httpErrorCodesThatResetFailingChunkedUploads"].toList())) {
         list.push_back(t.toInt());
     }
     return list;
@@ -445,7 +445,7 @@ void Capabilities::addDirectEditor(DirectEditor* directEditor)
 
 DirectEditor* Capabilities::getDirectEditorForMimetype(const QMimeType &mimeType)
 {
-    foreach(DirectEditor* editor, _directEditors) {
+    for (DirectEditor* editor : qAsConst(_directEditors)) {
         if(editor->hasMimetype(mimeType))
             return editor;
     }
@@ -455,7 +455,7 @@ DirectEditor* Capabilities::getDirectEditorForMimetype(const QMimeType &mimeType
 
 DirectEditor* Capabilities::getDirectEditorForOptionalMimetype(const QMimeType &mimeType)
 {
-    foreach(DirectEditor* editor, _directEditors) {
+    for (DirectEditor* editor : qAsConst(_directEditors)) {
         if(editor->hasOptionalMimetype(mimeType))
             return editor;
     }
index b1cb4268d1059948c704f90fd426d1b8114beba7..8fa4012576ada04abf4f1e272304aad386e38a3b 100644 (file)
@@ -141,7 +141,7 @@ bool copy_dir_recursive(QString from_dir, QString to_dir)
     from_dir += QDir::separator();
     to_dir += QDir::separator();
 
-    foreach (QString copy_file, dir.entryList(QDir::Files)) {
+    for (const QString &copy_file : qAsConst(dir.entryList(QDir::Files))) {
         QString from = from_dir + copy_file;
         QString to = to_dir + copy_file;
 
@@ -150,7 +150,7 @@ bool copy_dir_recursive(QString from_dir, QString to_dir)
         }
     }
 
-    foreach (QString copy_dir, dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot)) {
+    for (const QString &copy_dir : qAsConst(dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot))) {
         QString from = from_dir + copy_dir;
         QString to = to_dir + copy_dir;
 
index f0e3bca10ca53e2b8dcad4e18c7264c76d21b32d..57e5ce267f8e6682a95244b70d00bec0d886fd8d 100644 (file)
@@ -139,7 +139,7 @@ bool CookieJar::restore(const QString &fileName)
 QList<QNetworkCookie> CookieJar::removeExpired(const QList<QNetworkCookie> &cookies)
 {
     QList<QNetworkCookie> updatedList;
-    foreach (const QNetworkCookie &cookie, cookies) {
+    for (const QNetworkCookie &cookie : qAsConst(cookies)) {
         if (cookie.expirationDate() > QDateTime::currentDateTimeUtc() && !cookie.isSessionCookie()) {
             updatedList << cookie;
         }
index 23800013b0a1e7566cf6709640fd483d70379a54..60417bf78357afec2eb474f79217dd61c5a4650b 100644 (file)
@@ -405,7 +405,7 @@ bool ProcessDirectoryJob::handleExcluded(const QString &path, const Entries &ent
                 item->_errorString = tr("File names ending with a period are not supported on this file system.");
             } else {
                 char invalid = '\0';
-                foreach (char x, QByteArray("\\:?*\"<>|")) {
+                for (char x : QByteArray("\\:?*\"<>|")) {
                     if (item->_file.contains(x)) {
                         invalid = x;
                         break;
@@ -2086,7 +2086,7 @@ int ProcessDirectoryJob::processSubJobs(int nbJobs)
     }
 
     int started = 0;
-    foreach (auto *rj, _runningJobs) {
+    for (auto *rj : qAsConst(_runningJobs)) {
         started += rj->processSubJobs(nbJobs - started);
         if (started >= nbJobs)
             return started;
index c01ab82e2b01d9bbb55d89afeeed97ed94fc1375..a1540ebe46153403506493e3eba926dff6a0c778 100644 (file)
@@ -346,7 +346,7 @@ void LsColJob::start()
         qCWarning(lcLsColJob) << "Propfind with no properties!";
     }
     QByteArray propStr;
-    foreach (const QByteArray &prop, properties) {
+    for (const QByteArray &prop : qAsConst(properties)) {
         if (prop.contains(':')) {
             int colIdx = prop.lastIndexOf(":");
             auto ns = prop.left(colIdx);
index 2cfbc9566e96f2e75ba3445bf966df20978f5887..55f090ec062119026c74cdb849abbbeaff1d6428 100644 (file)
@@ -555,7 +555,7 @@ void OwncloudPropagator::start(SyncFileItemVector &&items)
     QVector<PropagatorJob *> directoriesToRemove;
     QString removedDirectory;
     QString maybeConflictDirectory;
-    foreach (const SyncFileItemPtr &item, items) {
+    for (const SyncFileItemPtr &item : qAsConst(items)) {
         if (!removedDirectory.isEmpty() && item->_file.startsWith(removedDirectory)) {
             // this is an item in a directory which is going to be removed.
             auto *delDirJob = qobject_cast<PropagateDirectory *>(directoriesToRemove.first());
@@ -618,7 +618,7 @@ void OwncloudPropagator::start(SyncFileItemVector &&items)
         }
     }
 
-    foreach (PropagatorJob *it, directoriesToRemove) {
+    for (PropagatorJob *it : qAsConst(directoriesToRemove)) {
         _rootJob->appendDirDeletionJob(it);
     }
 
@@ -643,7 +643,7 @@ void OwncloudPropagator::startDirectoryPropagation(const SyncFileItemPtr &item,
         // checkForPermissions() has already run and used the permissions
         // of the file we're about to delete to decide whether uploading
         // to the new dir is ok...
-        foreach (const SyncFileItemPtr &dirItem, items) {
+        for (const SyncFileItemPtr &dirItem : qAsConst(items)) {
             if (dirItem->destination().startsWith(item->destination() + "/")) {
                 dirItem->_instruction = CSYNC_INSTRUCTION_NONE;
                 _anotherSyncNeeded = true;
@@ -1348,7 +1348,7 @@ void PropagatorCompositeJob::finalize()
 qint64 PropagatorCompositeJob::committedDiskSpace() const
 {
     qint64 needed = 0;
-    foreach (PropagatorJob *job, _runningJobs) {
+    for (PropagatorJob *job : qAsConst(_runningJobs)) {
         needed += job->committedDiskSpace();
     }
     return needed;
index ad191111184232cac196b6bc6adfee940eb99016..09949116c99c88d823b69917f21876873ef71482 100644 (file)
@@ -277,7 +277,7 @@ public:
     {
         if (!_runningJobs.empty()) {
             _abortsCount = _runningJobs.size();
-            foreach (PropagatorJob *j, _runningJobs) {
+            for (PropagatorJob *j : qAsConst(_runningJobs)) {
                 if (abortType == AbortType::Asynchronous) {
                     connect(j, &PropagatorJob::abortFinished,
                             this, &PropagatorCompositeJob::slotSubJobAbortFinished);
index 3272be55103ecbc83c999f7f544daff2e4bd7b70..1f6f475c9122f46f8739132abc9e24431f5512ef 100644 (file)
@@ -369,7 +369,7 @@ void ProgressInfo::updateEstimates()
 void ProgressInfo::recomputeCompletedSize()
 {
     qint64 r = _totalSizeOfCompletedJobs;
-    foreach (const ProgressItem &i, _currentItems) {
+    for (const ProgressItem &i : qAsConst(_currentItems)) {
         if (isSizeDependent(i._item))
             r += i._progress._completed;
     }
index 3fea412308222785819ccaa03038841c78a2fb09..4c55f046dade49605fd5d6b5d8ca715f548246e2 100644 (file)
@@ -865,7 +865,7 @@ void PropagateUploadFileCommon::abortNetworkJobs(
     };
 
     // Abort all running jobs, except for explicitly excluded ones
-    foreach (AbstractNetworkJob *job, _jobs) {
+    for (AbstractNetworkJob *job : qAsConst(_jobs)) {
         auto reply = job->reply();
         if (!reply || !reply->isRunning())
             continue;
index 31b2703eeed6d1ed34dc7f2cf9881102cc702b05..efdc54bfdb0178a7bba16074af1c9d61a241ea58 100644 (file)
@@ -299,7 +299,11 @@ void PropagateUploadFileV1::slotPutFinished()
         SyncJournalDb::UploadInfo pi;
         pi._valid = true;
         auto currentChunk = job->_chunk;
-        foreach (auto *job, _jobs) {
+<<<<<<< HEAD
+        for (auto *otherJob : qAsConst(_jobs)) {
+=======
+        for (auto *job : std::as_const(_jobs)) {
+>>>>>>> a0aaf26d9 (fixed wrong variable name)
             // Take the minimum finished one
             if (auto putJob = qobject_cast<PUTFileJob *>(job)) {
                 currentChunk = qMin(currentChunk, putJob->_chunk - 1);
@@ -373,7 +377,7 @@ void PropagateUploadFileV1::slotUploadProgress(qint64 sent, qint64 total)
     sender()->setProperty("byteWritten", sent);
     if (_jobs.count() > 1) {
         amount -= (_jobs.count() - 1) * chunkSize();
-        foreach (QObject *j, _jobs) {
+        for (QObject *j : qAsConst(_jobs)) {
             amount += j->property("byteWritten").toULongLong();
         }
     } else {
index 99e69719dac23a45eb5f0a4d0e8e485d82394d0b..c3f0291157ded6c9d9c646b63c1c8abf544fdcad 100644 (file)
@@ -80,7 +80,7 @@ bool PropagateLocalRemove::removeRecursively(const QString &path)
         // We need to delete the entries from the database now from the deleted vector.
         // Do it while avoiding redundant delete calls to the journal.
         QString deletedDir;
-        foreach (const auto &it, deleted) {
+        for (const auto &it : qAsConst(deleted)) {
             if (!it.first.startsWith(propagator()->localPath()))
                 continue;
             if (!deletedDir.isEmpty() && it.first.startsWith(deletedDir))
index 515417084a78e9f850c603654fcddb59b89704fc..13d1381b83159b9f67173c5a1d8d489d46d1f654 100644 (file)
@@ -215,7 +215,7 @@ void SyncEngine::deleteStaleDownloadInfos(const SyncFileItemVector &syncItems)
 {
     // Find all downloadinfo paths that we want to preserve.
     QSet<QString> download_file_paths;
-    foreach (const SyncFileItemPtr &it, syncItems) {
+    for (const SyncFileItemPtr &it : qAsConst(syncItems)) {
         if (it->_direction == SyncFileItem::Down
             && it->_type == ItemTypeFile
             && isFileTransferInstruction(it->_instruction)) {
@@ -226,7 +226,7 @@ void SyncEngine::deleteStaleDownloadInfos(const SyncFileItemVector &syncItems)
     // Delete from journal and from filesystem.
     const QVector<SyncJournalDb::DownloadInfo> deleted_infos =
         _journal->getAndDeleteStaleDownloadInfos(download_file_paths);
-    foreach (const SyncJournalDb::DownloadInfo &deleted_info, deleted_infos) {
+    for (const SyncJournalDb::DownloadInfo &deleted_info : qAsConst(deleted_infos)) {
         const QString tmppath = _propagator->fullLocalPath(deleted_info._tmpfile);
         qCInfo(lcEngine) << "Deleting stale temporary file: " << tmppath;
         FileSystem::remove(tmppath);
@@ -237,7 +237,7 @@ void SyncEngine::deleteStaleUploadInfos(const SyncFileItemVector &syncItems)
 {
     // Find all blacklisted paths that we want to preserve.
     QSet<QString> upload_file_paths;
-    foreach (const SyncFileItemPtr &it, syncItems) {
+    for (const SyncFileItemPtr &it, qAsConst(syncItems)) {
         if (it->_direction == SyncFileItem::Up
             && it->_type == ItemTypeFile
             && isFileTransferInstruction(it->_instruction)) {
@@ -250,7 +250,7 @@ void SyncEngine::deleteStaleUploadInfos(const SyncFileItemVector &syncItems)
 
     // Delete the stales chunk on the server.
     if (account()->capabilities().chunkingNg()) {
-        foreach (uint transferId, ids) {
+        for (uint transferId : qAsConst(ids)) {
             if (!transferId)
                 continue; // Was not a chunked upload
             QUrl url = Utility::concatUrlPath(account()->url(), QLatin1String("remote.php/dav/uploads/") + account()->davUser() + QLatin1Char('/') + QString::number(transferId));
@@ -263,7 +263,7 @@ void SyncEngine::deleteStaleErrorBlacklistEntries(const SyncFileItemVector &sync
 {
     // Find all blacklisted paths that we want to preserve.
     QSet<QString> blacklist_file_paths;
-    foreach (const SyncFileItemPtr &it, syncItems) {
+    for (const SyncFileItemPtr &it : qAsConst(syncItems)) {
         if (it->_hasBlacklistEntry)
             blacklist_file_paths.insert(it->_file);
     }
index 6e4e809629b4fc90c27e039570536e81ad96210b..65dc75499763dd6d11d7dab0a659e50579bbbb5b 100644 (file)
@@ -235,7 +235,7 @@ void SyncFileStatusTracker::slotAboutToPropagate(SyncFileItemVector &items)
     ProblemsMap oldProblems;
     std::swap(_syncProblems, oldProblems);
 
-    foreach (const SyncFileItemPtr &item, items) {
+    for (const SyncFileItemPtr &item : qAsConst(items)) {
         qCInfo(lcStatusTracker) << "Investigating" << item->destination() << item->_status << item->_instruction << item->_direction;
         _dirtyPaths.remove(item->destination());
 
index da3a53b70195d51f78a870003c05884a42229b0f..da419229e046c3f2f4a83fd59e5f3b2513c782d6 100644 (file)
@@ -81,7 +81,7 @@ private slots:
         tests.append(Test("\"fii\"-gzip", "fii"));
         tests.append(Test("W/\"foo\"", "foo"));
 
-        foreach (const auto& test, tests) {
+        for (const auto &test : qAsConst(tests)) {
             QCOMPARE(parseEtag(test.first), QByteArray(test.second));
         }
     }